Skip to content

op-reth: merge upstream op-reth/v2.6.1 - #26

Merged
sduchesneau merged 74 commits into
release/op-reth-2.xfrom
bump/op-reth-v2.6.1
Oct 22, 2026
Merged

sduchesneau merged 74 commits into
release/op-reth-2.xfrom
bump/op-reth-v2.6.1

Conversation

@sduchesneau

Copy link
Copy Markdown

Merges upstream op-reth/v2.6.1 (68 commits past op-reth/v2.5.0) into release/op-reth-2.x. To be tagged op-reth-v2.6.1-fh3.1.

Upstream moves reth from op-rs/reth aef8d3ef (reth v2.4.0) to ethereum-optimism/reth 0fbe4285 (reth v2.5.2), revm 41 → 42 and alloy-evm 0.37 → 0.38. So this needs streamingfast/reth#81, which merges that pin into release/optimism-2.x. Every reth crate points at its branch bump/op-reth-v2.6.1 for now; switch to the op-reth-v2.6.1-fh3.1 tag once ethereum-optimism#81 is merged and tagged, before merging this. alloy-evm moves to streamingfast/evm v0.38.0-sf, so traces keep their systemCalls.

Only rust/Cargo.toml and rust/Cargo.lock conflicted (the reth crate block). Firehose changes:

  • op-reth/crates/firehose/src/engine_validator.rs, our copy of reth's BasicEngineValidator, follows the reth v2.5.2 APIs (overlay manager, state provider builder, payload builder resources). Upstream's new txpool prewarming is off by default and not supported by this copy; the node now warns if --engine.txpool-prewarming is set.
  • No Firehose ExEx, matching reth and bnb-reth. op-reth never installed it, but FIRE INIT and the genesis block were emitted around it (before launch and from on_node_started). Both now come from on_component_initialized, before the engine exists. The reth fork's unused run_exex is removed in Enables solidity syntax highlight on github.com ethereum-optimism/optimism#81.

The op-revm, alloy-op-evm and op-reth changes in the range leave the Firehose hooks' inputs unchanged: reward_beneficiary is identical at both tags, so extras.rs vault credits still match; the deposit gas-cap exemption only moved into the handler; the Bedrock deposit fix is serde-only; no fork timestamps or superchain-registry pin changed. Known gap, older than this bump: Lagoon's PostExec tx type 0x7D is not in firehose-tracer 5.5.0 TxType, and the mapper would panic on it. Lagoon is not scheduled on any chain we serve.

Tests: cargo test -p reth-optimism-firehose -p alloy-op-evm -p op-alloy-consensus (188 passed), cargo test -p reth-optimism-node --lib --test it (48 passed), cargo test -p reth-optimism-cli (9 passed). Battlefield op-reth-devnet: 78 passing, 24 pending (skipped by the suite), 0 failing. The devnet stops at Isthmus, so Jovian/Karst are not covered.

Details in .dev/todo/update-to-op-reth-v2.6.1.md.

pauldowman and others added 30 commits September 23, 2026 17:20
…public/private boundary (ethereum-optimism#22952)

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
Co-authored-by: Anton Evangelatov <anton.evangelatov@gmail.com>
Co-authored-by: soyboy <85043086+sbvegan@users.noreply.github.com>
…#22927)

Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
…#22987)

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
…ptimism#23003)

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…m#22961)

Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
…e game L1 head (ethereum-optimism#23020)

Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…s logger surface (ethereum-optimism#23013)

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…optimism#23017)

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…tx_gas (ethereum-optimism#22993)

Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
…reum-optimism#23049)

Co-authored-by: mintlify[bot] <109931778+mintlify[bot]@users.noreply.github.com>
…m#23051)

Co-authored-by: George Knee <georgeknee@googlemail.com>
…lock the precompile tests (ethereum-optimism#23038)

Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: wwared <541936+wwared@users.noreply.github.com>
Co-authored-by: wwared <541936+wwared@users.noreply.github.com>
joshklop and others added 24 commits September 30, 2026 10:18
Co-authored-by: Sebastian Stammler <seb@oplabs.co>
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ethereum-optimism#23109)

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…sm#23052)

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…eum-optimism#23082)

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…r READMEs (ethereum-optimism#23098)

Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
…reum-optimism#23055)

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
… reference lint (ethereum-optimism#23091)

Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
…sm#23110)

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…um-optimism#23117)

Co-authored-by: wwared <541936+wwared@users.noreply.github.com>
ethereum-optimism#23567)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>

(cherry picked from commit 3dc5bc7)
…3566)

(cherry picked from commit cf6e140)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…eum-optimism#23546)

Co-authored-by: oplabs-renovate[bot] <310106951+oplabs-renovate[bot]@users.noreply.github.com>

(cherry picked from commit f9e438c)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Finalized release tag for op-reth/v2.6.1-rc.1

# Conflicts:
#	rust/Cargo.lock
#	rust/Cargo.toml
The validator is a copy of reth's BasicEngineValidator. Follow the
v2.5.2 overlay manager, state provider builder and payload builder
resources APIs.
Both now come from the on_component_initialized hook, as in reth.
Genesis was emitted from on_node_started, which can run after the
engine has already traced a block.
Also fix two stale comments and the formatting from the reth v2.5.2 port,
and note that the Firehose init hook must stay the only one.
@sduchesneau
sduchesneau marked this pull request as ready for review October 22, 2026 17:47

@UlysseCorbeil UlysseCorbeil left a comment •

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@sduchesneau sduchesneau changed the title Merge op-reth v2.6.1 op-reth: merge upstream op-reth/v2.6.1 Oct 22, 2026
@sduchesneau
sduchesneau merged commit 60369ce into release/op-reth-2.x Oct 22, 2026
4 of 6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.